home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 1
/
Atari Mega Archive - Volume 1.iso
/
program
/
progem.arc
/
gem8.asc
< prev
next >
Wrap
Text File
|
1987-10-10
|
25KB
|
480 lines
*PROFESSIONAL GEM*
By Tim Oren
Column #8: USER INTERFACES
HOMILY #1
AND NOW FOR SOMETHING COMPLETELY DIFFERENT! In response to a
number of requests, this installment of ST PRO GEM will be devoted
to examining a few of the principles of computer/human interface
design, or "religion" as some would have it. I'm going to start
with basic ergonomic laws, and try to draw some conclusions which
are fairly specific to designing for the ST. If this article
meets with general approval, further "homilies" may appear at
irregular intervals as part of the ST PRO GEM series.
For those who did NOT ask for this topic, it seems fair to
explain why your diet of hard-core technical information has been
interrupted by a sermon! As a motivater, we might consider why
some programs are said by reviewers to have a "hot" feel (and
hence sell well!) while others are "confusing" or "boring".
Alan Kay has said that "user interface is theatre". I think
we may be able to take it further, and suggest that a successful
program works a bit of magic, persuading the user to suspend his
disbelief and enter an imaginary world behind the screen, whether
it is the mathematical world of a spreadsheet, or the land of Pacman
pursued by ghosts.
A reader of a novel or science fiction story also suspends
disbelief to participate in the work. Bad grammar and clumsy plotting
by the author are jarring, and break down the illusion. Similarly,
a programmer who fails to pay attention to making his interface
fast and consistent will annoy the user, and distract him from
whatever care has been lavished on the functional core of the program.
CREDIT WHERE IT'S DUE. Before launching into the discussion
of user interface, I should mention that the general treatment and
many of the specific research results are drawn from Card, Newell,
and Moran's landmark book on the topic, which is cited at the end
of the article. Any errors in interpretation and application to
GEM and the ST are entirely my own, however.
FINGERTIPS. We'll start right at the user's fingers with the
basic equation governing positioning of the mouse, Fitt's Law,
which is given as
T = I * LOG2( D / S + .5)
where T is the amount of time to move to a target, D is the distance
of the target from the current position, and S is the size of the
target, stated in equivalent units. LOG2 is the base 2 (binary)
logarithm function, and I is a proportionality constant, about
100 milliseconds per bit, which corresponds to the human's "clock
rate" for making incremental movements.
We can squeeze an amazing amount of information out of this
formula when attempting to speed up an interface. Since motion time
goes up with distance, we should arrange the screen with the
usual working area near the center, so the mouse will have to move
a smaller distance on average from a selected object to a menu or
panel. Likewise, any items which are usually used together should
be placed together.
The most common operations will have the greater impact on
speed, so they should be closest to the working area and perhaps
larger than other icons or menu entries. If you want to have
all other operations take about the same time, then the targets
farthest from the working area should be larger, and those closer
may be proportionately smaller.
Consider also the implications for dialogs. Small check boxes
are out. Large buttons which are easy to hit are in. There should
be ample space between selectable items to allow for positioning
error. Dangerous options should be widely separated from common
selections.
MUSCLES. Anyone who has used the ST Desktop for any period
of time has probably noticed that his fingers now know where to find
the File menu. This phenomenon is sometimes called "muscle memory",
and its rate of onset is given by the Power Law of Practice:
T(n) = T(1) * n ** (-a)
where T(n) is the time on the nth trial, T(1) is the time on the
first trial, and a is approximately 0.4. (I have appropriated
** from Fortran as an exponentiation operator, since C lacks one.)
This first thing to note about the Power Law is that it only
works if a target stays in the same place! This should be a potent
argument against rearranging icons, menus, or dialogs without some
explicit request by the user. The time to hit a target which moves
around arbitrarily will always be T(1)!
In many cases, the Power Law will also work for sequences of
operations to even greater effect. If you are a touch typist, you
can observe this effect by comparing how fast you can enter "the"
in comparison to three random letters. We'll come back shortly
to consider what we can do to encourage this phenomenon.
EYES. Just as fingers are the way the user sends data to the
computer, so the eyes are his channel from the machine. The rate
at which information may be passed to the user is determined by
the "cycle time" of his visual processor. Experimental results
show that this time ranges between 50 and 200 milliseconds.
Events separated by 50 milliseconds or less are always
perceived as a single event. Those separated by more than 200
milliseconds are always seen as separate. We can use these
facts in optimizing user of the computer's power when driving the
interface.
Suppose your application's interface contains an icon which
should be inverted when the mouse passes over it. We now know
that flipping it within one twentieth of a second is necessary
and sufficient. Therefore, if a "first cut" at the program achieves
this performance, there is no need for further optimization, unless
you want to interleave other operations. If it falls short, it will
be necessary to do some assembly coding to achieve a smooth feel.
On the other hand, two actions which you want to appear distinct
or convey two different pieces of information must be separated
by an absolute minimum of a fifth of a second, even assuming that
they occur in an identical location on which the user's attention
is already focused.
We are able to influence the visual processing rate within the
50 to 200 millisecond range by changing the intensity of the stimulus
presented. This can be done with color, by flashing a target, or
by more subtle enhancements such as bold face type. For instance,
most people using GEM soon become accustomed to the "paper white"
background of most windows and dialogs. A dialog which uses a
reverse color scheme, white letters on black, is visually shocking
in its starkness, and will immediately draw the user's eyes.
It should be quickly added that stimulus enhancement will only
work when it unambiguously draws attention to the target. Three or
four blinking objects scattered around the screen are confusing, and
worse than no enhancement at all!
SHORT-TERM MEMORY. Both the information gathered by the eyes
and movement commands on their way to the hand pass through short-term
memory (also called working memory). The amount of information which
can be held in short-term memory at any one time is limited. You can
demonstrate this limit on yourself by attempting to type a sheet of
random numbers by looking back and forth from the numbers to the
screen. If you are like most people, you will be able to remember
between five and nine numbers at a time. So universal is this
finding that it is sometimes called "the magic number seven, plus
or minus two".
This short-term capacity sets a limit on the number of choices
which the user can be expected to grasp at once. It suggests that
the number of independent choices in a menu, for instance, should
be around seven, and never exceed nine. If this limit is violated,
then the user will have to take several glances, with pauses to
think, in order to make a choice.
CHUNKING. The effective capacity of short-term memory can be
increased when several related items are mentally grouped as a "chunk".
Humans automatically adopt this strategy to save themselves time.
For instance, random numbers had to be used in